import hashlib
import json

import requests


# r = c()("6key_cibaifanyicjbysdlove1".concat(t.q.replace(/(^\s*)|(\s*$)/g, ""))).toString().substring(0, 16);
# return h("/index.php?c=trans&m=fy&client=6&auth_user=key_ciba&sign=".concat(r), {
while True:
    class Fy_spider(object):
        def __init__(self, query_str):
            self.query_str = query_str

            # 初始翻译路劲
            sign = (hashlib.md5(('6key_cibaifanyicjbysdlove1' + self.query_str).encode('utf-8')).hexdigest())[0:16]

            url = 'http://ifanyi.iciba.com/index.php?c=trans&m=fy&client=6&auth_user=key_ciba'
            self.url = url + '&sign=' + sign
            self.headers = {
                "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36"}

            # 获取请求数据
            self.data = self.get_data()

        def get_data(self):
            # 获取请求头数据
            data = {'form': 'auto',
                    'to': 'auto',
                    'q': self.query_str}
            return data

        def get_data_fromurl(self):
            """从服务器获取数据 并且解码返回"""
            respones = requests.post(self.url, headers=self.headers, data=self.data)
            return respones.content.decode()

        def parse_data(self, join_str):
            dict_data = json.loads(join_str)
            result = dict_data['content']['out']
            print('{}翻译后的结果：{}'.format(self.query_str, result))

        def run(self):
            # 1： 获取 url 请求头 请求头
            # 2： 发送请求获取响应数据
            join_str = self.get_data_fromurl()
            # 3： 对数据进行提取
            self.parse_data(join_str)


    if __name__ == '__main__':
        query_str = input('请输入翻译内容:\n')
        spider = Fy_spider(query_str)
        spider.run()
